
package cn.edu.scau.cmi.hombio.dao;

import cn.edu.scau.cmi.hombio.domain.Customer;

import java.util.Set;

import org.skyway.spring.util.dao.JpaDao;

import org.springframework.dao.DataAccessException;

/**
 * DAO to manage Customer entities.
 * 
 */
public interface CustomerDAO extends JpaDao<Customer> {

	/**
	 * JPQL Query - findCustomerByPrimaryKey
	 *
	 */
	public Customer findCustomerByPrimaryKey(Integer id) throws DataAccessException;

	/**
	 * JPQL Query - findCustomerByPrimaryKey
	 *
	 */
	public Customer findCustomerByPrimaryKey(Integer id, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findCustomerByNameContaining
	 *
	 */
	public Set<Customer> findCustomerByNameContaining(String name) throws DataAccessException;

	/**
	 * JPQL Query - findCustomerByNameContaining
	 *
	 */
	public Set<Customer> findCustomerByNameContaining(String name, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findCustomerByMemo
	 *
	 */
	public Set<Customer> findCustomerByMemo(String memo) throws DataAccessException;

	/**
	 * JPQL Query - findCustomerByMemo
	 *
	 */
	public Set<Customer> findCustomerByMemo(String memo, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findCustomerByName
	 *
	 */
	public Set<Customer> findCustomerByName(String name_1) throws DataAccessException;

	/**
	 * JPQL Query - findCustomerByName
	 *
	 */
	public Set<Customer> findCustomerByName(String name_1, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findCustomerByMemoContaining
	 *
	 */
	public Set<Customer> findCustomerByMemoContaining(String memo_1) throws DataAccessException;

	/**
	 * JPQL Query - findCustomerByMemoContaining
	 *
	 */
	public Set<Customer> findCustomerByMemoContaining(String memo_1, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findCustomerById
	 *
	 */
	public Customer findCustomerById(Integer id_1) throws DataAccessException;

	/**
	 * JPQL Query - findCustomerById
	 *
	 */
	public Customer findCustomerById(Integer id_1, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findAllCustomers
	 *
	 */
	public Set<Customer> findAllCustomers() throws DataAccessException;

	/**
	 * JPQL Query - findAllCustomers
	 *
	 */
	public Set<Customer> findAllCustomers(int startResult, int maxRows) throws DataAccessException;

}